﻿<div>
  Normalement, Jenkins utilise le repository Maven local que Maven détermine lui-même &mdash;
  le process exact ne semble pas documenté mais ce répertoire est généralement <tt>~/.m2/repository</tt>.
  Il peut être modifié par le paramêtre &lt;localRepository> dans le fichier <tt>~/.m2/settings.xml</tt>
  (voir <a  href="http://maven.apache.org/settings.html">la référence</a> pour plus de détails.)

  <p>
  Cela signifie que, normalement, tous les jobs qui sont exécutés sur le même noeud (même machine) partagent
  un repository Maven unique. L'avantage, c'est que vous économisez de l'espace disque. Par contre, il
  peut aussi arriver que ces builds interfèrent les uns avec les autres. Par exemple, vous pouvez finir
  par avoir des builds qui s'achèvent avec succès incorrectement, simplement parce que toutes les
  dépendances sont déjà dans votre repository local, alors que les repositories spécifiés dans le POM
  ne les contiennent pas.

  <p>
  Il semble aussi y avoir des problèmes quand des process Maven concurrents tendent d'accéder au même
  repository local.

  <p>
  Quand cette option est sélectionnée, Jenkins demandera à Maven d'utiliser <tt>$WORKSPACE/.repository</tt>
  comme répertoire local Maven.
  Du coup, chaque job aura son propre repository Maven parfaitement isolé. Cela règle les problèmes
  cités ci-dessus, en échange de plus d'espace disque.

  <p>
  Si vous utilisez cette option, pensez à mettre en place un gestionnaire d'artefacts Maven. Ainsi,
  vous ne serez pas forcés d'accéder aux repositories Maven distants trop fréquemment.

  <p>
  Si vous préférez activer ce mode pour tous les jobs Maven exécutés par Jenkins, référez-vous à la
  technique décrite
  <a href="http://jenkins.361315.n4.nabble.com/Hudson-on-2-4-8-16-core-boxes-td371215.html#a371217">ici</a>.
</div>
